package com.battery.system.mapper;

import com.battery.system.base.BaseMapper;
import com.battery.system.domain.BO.MemberBO;
import com.battery.system.domain.Member;
import com.battery.system.domain.VIPDetails;
import com.battery.system.domain.VO.MemberVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * VIP申请Mapper接口
 *
 * @author battery
 * @date 2021-01-22
 */
public interface MemberMapper extends BaseMapper<Member> {
    /**
     * 查询VIP申请
     *
     * @param id VIP申请ID
     * @return VIP申请
     */
    public Member selectMemberById(String id);

    /**
     * 查询VIP申请列表
     *
     * @param member VIP申请
     * @return VIP申请集合
     */
    public List<Member> selectMemberList(Member member);

    /**
     * 新增VIP申请
     *
     * @param member VIP申请
     * @return 结果
     */
    public int insertMember(Member member);

    /**
     * 修改VIP申请
     *
     * @param member VIP申请
     * @return 结果
     */
    public int updateMember(Member member);

    /**
     * 删除VIP申请
     *
     * @param id VIP申请ID
     * @return 结果
     */
    public int deleteMemberById(String id);

    /**
     * 批量删除VIP申请
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteMemberByIds(String[] ids);

    /**
     * 查看VIP客户列表
     *
     * @param memberBO
     * @return
     */
    List<MemberVO> selectMemberVOList(@Param("memberBO") MemberBO memberBO);

    List<VIPDetails> selectMemberByKeyList(@Param("id") String id,@Param("key") String key);

    VIPDetails selectVIPDetailsById(String id);

    List<Member> selectMemberOnStoreNameList(Member member);
}
